Businesses amass large quantities of data based on customer relationship management (CRM) events that transpire during daily operations. CRM events can include any recordable act or action. Events can record high level actions such as the completion of a sale. Events can also record low level actions such as a mouse click performed by a sales representative in order to add to or modify some data record.
The data that is associated with an event defines that event. For example, an event may capture a sales representative placing an outbound call to a potential customer. The data defining such an event can include information identifying the sales representative, information identifying the potential customer, the telephone contact number of the potential customer, a time the outbound call is initiated, a time the outbound call is terminated, and a disposition of the call as some examples.
For any enterprise or large scale business, the challenge is how to extract meaningful intelligence from the collection of CRM events and their associated data. The CRM events often reside in multiple repositories. For example, the finance department of a particular business may have its own repository storing billing related events, while the sales department of the particular business has its own independent repository storing sales related events. The fact that one billing event may be derived from one sales event is hidden by virtue of the separation and independent operation of the different business units.
Accordingly, there is a need to extract intelligence from seemingly unrelated and independent events. Stated differently, there is need to link events in a manner that identifies the temporal or causal effects that bring about the events. There is then a need to leverage the linkage in order to extract the cradle-to-grave life cycle that occurs across the related set of events as well as to build and retain data about different entities.